home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-12-14 | 7.5 KB | 185 lines | [TEXT/ttxt] |
- ABOUT THINK C/SYMANTEC C++ 6.0.1
- =================================
- Copyright © 1993 Symantec Corporation. All Rights Reserved.
- September 21, 1993
- Font: Geneva 12
-
- INTRODUCTION
- =============
- The THINK C/Symantec C++ for Macintosh version 6.0.1 corrects problems with the 6.0
- release of the following components of the Symantec C++ for Macintosh/THINK C system:
- THINK Project Manager, THINK Debugger, SourceServer, Symantec C++ (if applicable), THINK
- C, THINK Rez, and the runtime libraries.
-
- This document has the following sections:
-
- • UPDATING YOUR SYSTEM tells you how to run the various patch
- programs to update your THINK C/Symantec C++ for Macintosh components,
- and how to update your libraries.
-
- • WORK-AROUNDS describes how to avoid some problems developers
- have reported to us in using Symantec C++ for Macintosh/THINK C.
-
- The file “What Changed” in the “Release Notes” folder lists the most important bugs that
- this update fixes in the various components of Symantec C++ for Macintosh/THINK C.
-
- UPDATING YOUR SYSTEM
- =====================
- Updating your THINK C/Symantec C++ for Macintosh 6.0 system is a three step
- process: you need to patch the applications and translators, install the new
- libraries and header files, and optionally install a new set of sample Apple scripts.
-
- Patching Things Up
- -----------------
- This update contains six small applications in the ‘Patches’ folder that
- will transform your components into the new versions. Updating is easy:
-
- • Make sure that you update a clean installation of THINK C/Symantec C++ for
- Macintosh 6.0, and that you have your original disks handy in case you need to
- re-install THINK C/Symantec C++.
- • Double-click on the patch application (e.g. “TPM 6.0.1 Patch”).
- • Read the messages in the dialog that comes up; they may contain
- important information. Click the ‘Patch’ button.
- • Find the component asked for using the standard file dialog box.
-
- •••••••••
- IMPORTANT
- •••••••••
-
- The patch is done in place! This means that the patcher will overwrite
- the file you’re updating. When it is done, you will get a confirmation that
- the patch was successful if all goes well.
-
- • Repeat these steps for the other patches in the ‘Patches’ folder:
-
- THINK C 6.0.1 Patch
- THINK Rez 1.0.1 Patch
- THINK Debugger 6.0.1 Patch
- SourceServer 1.0.1 Patch
- Symantec C++ 6.0.1 Patch (*)
-
- (*) You only need this if you have Symantec C++ for Macintosh. If you have
- THINK C 6.0, then you don’t need to do anything with this file.
-
- Updating the Libraries
- --------------------
- The library updates are contained in a Compact Pro self extracting archive.
- Installing them is easy:
-
- • Double-click on the file “Library Updates.sea”.
- • When it asks you to “Select the destination folder”, move to your
- Symantec C++ for Macintosh (or THINK C) folder and click “Extract”.
- • The archive will begin to extract its files, and at one point will say
- that a duplicate file was found. This is correct; press the “Replace ALL
- Duplicates” button to finish the installation.
-
- If you have Symantec C++ for Macintosh, then you also need to do the following:
-
- • Double-click on the file “C++ Library Updates.sea”.
- • When it asks you to “Select the destination folder,” select your
- Symantec C++ for Macintosh folder.
- • The archive will begin to extract its files, and at one point will say
- that a duplicate file was found (this is correct). Press the “Replace ALL
- Duplicates” button to finish the installation.
- • If you are using the THINK Class Library with C++, then you *must* re-
- precompile TCL Headers++.
-
- Updating the Sample AppleScripts
- -------------------------------
- The sample AppleScripts have been updated to reflect the changes made to the
- scripting features in the THINK Project Manager 6.0.1, and to fix several bugs in
- the original scripts.
-
- • Double-click on the file “Sample AppleScripts Update.sea”.
- • When it asks you to “Select the destination folder”, move to the
- ‘Scripting’ folder and click “Extract”.
- • The archive will begin to extract its files, and at one point will say
- that a duplicate file was found. This is correct; press the “Replace ALL
- Duplicates” button to finish the installation.
-
-
- WORK-AROUNDS
- ===============
- This section describes how to avoid known problems with the Symantec C++
- for Macintosh/THINK C system.
-
- THINK Project Manager
- ---------------------
- • PowerBook programmers should take care when using the THINK Project Manager
- with the extension “Programmer’s” Key. It treats the back quote (`) key as a
- replacement for the power key. Hence pressing Command-` causes an interrupt
- rather than going to the previous error when the batch search window is up.
-
- • If you throw out the resource file associated with a project, it will not be
- automatically recreated when the project is built. You will need to manually
- recompile the project’s resources.
-
- • Option-double-clicking on a library function will call up documentation for the
- function in THINK Reference only if THINK Reference is already running: it will not
- launch THINK Reference. Pressing Command-minus or selecting “Find in THINK
- Reference” will launch the application if necessary. Make sure that you have an
- alias called “THINK Reference” pointing to the THINK Reference application in your
- Tools folder (see page 30 of the User’s Guide).
-
- • If you de-rez your project’s resource file (i.e. foo.π.rsrc) to foo.r, and add this Rez
- file to your project without first deleting foo.π.rsrc, you will get many “multiply
- defined” resource errors. If you want to use text-based resources in this manner,
- rename your foo.π.rsrc.
-
- • When searching for an inline method within a class declaration, it is possible to
- match a string earlier in the file if one exists. Pressing Command-G will
- eventually take you to the correct definition.
-
- • The browser cannot distinguish overloaded methods/operators: it will highlight the
- first method name found without matching the parameter lists. Again, pressing
- Command-G will eventually take you to the correct definition.
-
- Symantec C++
- -------------
- • Friend declarations are not accepted as a forward declaration, so the following
- snippet will not compile without first forward declaring Y:
-
- //class Y;
- class X {
- friend class Y;
- Y *pY;
- };
-
- • To declare a reference to a pointer to an int, use the following:
-
- int *s;
- int *&p = s;
-
- • The “Align 4-byte boundaries” option in the C++ compiler aligns the members of a
- structure on 4-byte boundaries.
-
- • CPlusLib should always reside in a resident segment: it should never be unloaded.
-
- • When precompiling headers that contain inline implementations of virtual functions
- outside of the class declarations, the “inline” keyword must be specified in the
- class declaration. For example,
-
- class c {
- public:
- virtual short foo(short n);
- };
-
- inline short c::foo(short n) { return 2*n; }
-
- will not precompile. However, declaring foo as
-
- inline virtual short foo(short n);
-
- will work as expected.
-
- • You can not have virtual functions in C++ classes in code resources or drivers.
- Instead, use PascalObject classes.
-
- • If you are writing a code resource that uses C++ static objects with constructors,
- then the constructors are not called. You will need to allocate an instance of the
- object with new for the constructor to be called.
-
- • When using PascalObject classes, either turn off both Far Code and Far Data or
- turn them both on. Mixing far and near models will not work with PascalObject.
-
-